﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace IBLL
{
    public partial interface IOrder_Send_TBLL : IBaseBLL<Model.Order_Send_T>
    {
        /// <summary>
        /// 根据调度员id获取归属的派送单
        /// </summary>
        /// <param name="OperID">调度员ID</param>
        /// <param name="YZM">验证码</param>
        /// <param name="RETID">1</param>
        /// <returns>json</returns>
        string GetOrder_SendByOperId(int OperID, string ConID, string StartTime, string EndTime, string FormID, int pageIndex, int pageSize, string YZM, int RETID);
        /// <summary>
        /// 调度员指派订单给派送员
        /// </summary>
        /// <param name="json"></param>
        /// <param name="YZM"></param>
        /// <param name="RETID"></param>
        /// <returns></returns>
        string SetFormToTaker(string json,int tag,string YZM,int RETID);

        /// <summary>
        /// 统计列表
        /// </summary>
        /// <param name="OperID">调度员ID</param>
        /// <param name="OperID">派送员微信ID</param>
        /// <param name="pageIndex">起始页</param>
        /// <param name="pageSize">分页大小</param>
        /// <param name="sdate">开始时间</param>
        /// <param name="edate">结束时间</param>
        /// <param name="ConID">状态</param>
        /// <param name="YZM">验证码</param>
        /// <param name="RETID"></param>
        /// <returns></returns>
        string GetOrder_SendList(string OperID, string OpenID,int pageIndex, int pageSize, string StarTime, string EndTime, int ConID, string YZM, int RETID);

        /// <summary>
        /// 属于派送员（正在派送和未接单）的单子
        /// </summary>
        /// <param name="TakerOpenID"></param>
        /// <param name="YZM"></param>
        /// <param name="RETID"></param>
        /// <returns></returns>
        string GetOrder_SendTaker(string TakerOpenID, int pageIndex, int pageSize, string YZM, int RETID);

        /// <summary>
        /// 当前派送单状态的下一个派送单状态
        /// </summary>
        /// <param name="FormID"></param>
        /// <param name="ConID"></param>
        /// <param name="YZM"></param>
        /// <param name="RETID"></param>
        /// <returns>Order_FormControl_T</returns>
        string GetNextCon(string FormID, string ConID, string YZM, int RETID);

        /// <summary>
        /// 获取订单状态控制
        /// </summary>
        /// <param name="YZM">验证码</param>
        /// <param name="RETID"></param>
        /// <returns></returns>
        string GetCon(string YZM, int RETID);

        /// <summary>
        /// 
        /// </summary>
        /// <param name="ConID">状态id</param>
        /// <param name="YZM">验证码</param>
        /// <param name="RETID"></param>
        /// <returns></returns>
        string SearchSend(int OperID, string YZM, int RETID);

        /// <summary>
        /// 查询该商户id下所有或个别派送员订单的派送
        /// </summary>
        /// <param name="merid"></param>
        /// <param name="YZM"></param>
        /// <param name="RETID"></param>
        /// <returns></returns>
        string GetGrid_Wiew_Send(int pageIndex, int pageSize, string Merid, string TakerName, string FormID, string Stime, string Etime, string YZM, int RETID);
       
         /// <summary>
        /// 查询该订单id下对应个别派送员订单的派送
        /// </summary>
        /// <param name="merid"></param>
        /// <param name="YZM"></param>
        /// <param name="RETID"></param>
        /// <returns></returns>
        string GetGrid_Wiew(string FormID, string YZM, int RETID);
    }
}
